package com.atguigu.chaptar1

import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

object MethodDemo {
  def main(args: Array[String]): Unit = {
    //传入路径获取前7天数据地址
    val strings = getPath(7, "/user/hive/warehouse/user_info")
    //集合数据如何传递给可变参数?集合:_*
    readFile(strings:_*)
  }

  /**
   * 获取前7天的用户数据的路径集合
   * @param pathDir
   */
  def getPath(n:Int,pathDir:String)={
    //1.获取当天日期
   val currentTime: LocalDateTime = LocalDateTime.now()
    //2.遍历相减得到7天的日期
      //yield表达式把日期拼接目录汇总成一个集合
    for(i<- 1 to n)yield{
      val time = currentTime.minusDays(i)
      //2.1格式化日期为yyyyMMdd的形式
      val timeStr: String = time.format(DateTimeFormatter.ofPattern("yyyyMMdd"))
      //2.2日期拼接目录
      s"${pathDir}/${timeStr}"
    }
  }
  /**
   * 通过可变参数形式读取路径数据
   * @param paths
   */
  def readFile(paths:String*)= {
    //模拟读取数据
    for (path <- paths) println(path)
  }
}

